package org.zpmis.domain.mail.model;

import lombok.Data;

import java.io.File;
import java.util.Map;

@Data
public class AttachMailMessageParam extends MailBaseMessage{

    /**
     * 普通邮件内容
     */
    private String text;

    /**
     * 附件字节 集合 key是文件的名称带后缀 不传附件的时候可以为空
     */
    private Map<String,byte[]> bytes;

    /**
     * 文件集合,和bytes一样, key是文件的名称带后缀 只是这个参数的接口不能使用dubbo远程调用 不传附件的时候可以为空
     */
    private Map<String, File> files;
    /**
     * 发送带附件的邮件构造函数  参数bytes和files 传一个就好
     */
    public AttachMailMessageParam(String toEmail, String ccEmail, String bccEmial, String subject, String text, Map<String,byte[]> bytes,Map<String, File> files) {
        super.setToEmial(toEmail);
        super.setCcEmail(ccEmail);
        super.setBccEmail(bccEmial);
        super.setSubject(subject);
        this.text = text;
        this.bytes = bytes;
        this.files = files;
    }

    /**
     * 发送带附件的邮件构造函数  参数bytes和files 传一个就好
     */
    public AttachMailMessageParam(String toEmail, String subject, String text, Map<String,byte[]> bytes,Map<String, File> files) {
        super.setToEmial(toEmail);
        super.setSubject(subject);
        this.text = text;
        this.bytes = bytes;
        this.files = files;
    }

    /**
     * 发送带附件的邮件构造函数  附件参数bytes
     */
    public AttachMailMessageParam(String toEmail, String subject, String text, Map<String,byte[]> bytes) {
        super.setToEmial(toEmail);
        super.setSubject(subject);
        this.text = text;
        this.bytes = bytes;
    }
}
